Wstęp

W ramach niniejszego projektu przeprowadzona zostanie eksploracyjna analiza danych (EDA) dotycząca sklepu rowerowego. Celem analizy jest zrozumienie charakterystyk nabywców rowerów oraz identyfikacja czynników, które mogą wpływać na decyzję o zakupie roweru. Dostępny zestaw danych obejmuje informacje o 1000 klientach, w tym szczegółowe cechy demograficzne i behawioralne, a także kategoryczną zmienną wyjściową informującą, czy dana osoba dokonała zakupu roweru. Ponieważ dane zawierają brakujące wartości (NA), konieczne będzie ich odpowiednie przetworzenie, co stanowi istotny element procesu analizy danych.

W ramach projektu zostaną wykonane następujące kroki:

  1. Data Cleansing, Wrangling

  2. Wizualizację Danych

  3. Analizę Opisową

  4. Wnioskowanie (testy statystyczne)

  5. Podsumowanie i wnioski końcowe

Opis zmiennych: - ID – unikalny identyfikator nabywcy

Tabela 1: Przykładowe dane klientów sklepu rowerowego
ID Marital Status Gender Income Children Education Occupation Home Owner Cars Commute Distance Region Age Purchased Bike
12496 Married Female 40000 1 Bachelors Skilled Manual Yes 0 0-1 Miles Europe 42 No
24107 Married Male 30000 3 Partial College Clerical Yes 1 0-1 Miles Europe 43 No
14177 Married Male 80000 5 Partial College Professional No 2 2-5 Miles Europe 60 No
24381 Single NA 70000 0 Bachelors Professional Yes 1 5-10 Miles Pacific 41 Yes
25597 Single Male 30000 0 Bachelors Clerical No 0 0-1 Miles Europe 36 Yes
13507 Married Female 10000 2 Partial College Manual Yes 0 1-2 Miles Europe 50 No
27974 Single Male 160000 2 High School Management NA 4 0-1 Miles Pacific 33 Yes
19364 Married Male 40000 1 Bachelors Skilled Manual Yes 0 0-1 Miles Europe 43 Yes
22155 NA Male 20000 2 Partial High School Clerical Yes 2 5-10 Miles Pacific 58 No
19280 Married Male NA 2 Partial College Manual Yes 1 0-1 Miles Europe NA Yes

Czyszczenie danych

Czyszczenie danych to proces usuwania, poprawiania lub imputacji brakujących, błędnych i niezgodnych wartości w zbiorze danych. Jest kluczowe dla zapewnienia jakości analizy, ponieważ błędne lub niepełne dane mogą prowadzić do fałszywych wniosków.

## Ilość brakujących wartości: 53

Interpretacja wykresu:

Podsumowanie brakujących danych

  • Najwięcej braków występuje w kolumnach Education, Occupation, Commute_Distance, Region, Home_Owner, Income, Marital_Status, itp.
  • Niektóre zmienne często występują razem jako brakujące, co sugeruje, że te braki mogą być powiązane (np. jeśli brakuje informacji o dochodzie, może również brakować danych o statusie mieszkaniowym).
  • Występowanie pojedynczych braków – kilka zmiennych ma pojedyncze braki, co można łatwo uzupełnić imputacją.

Analiza brakujących danych w relacji dochód-wiek

Opis wykresu

Wykres przedstawia rozkład danych w relacji między dochodem (oś X) a wiekiem (oś Y), z uwzględnieniem statusu kompletności danych (“Obecne” lub “Brakujące”). Dane zostały podzielone na trzy regiony: - Europa - Ameryka Północna - Pacyfik

Kolor zielony oznacza dane obecne, natomiast kolor pomarańczowy wskazuje na dane brakujące.

Kluczowe obserwacje

  1. Podział na regiony:
    • Dane zostały przedstawione w trzech panelach odpowiadających regionom (Europa, Ameryka Północna, Pacyfik).
    • Każdy region charakteryzuje się różnym rozkładem punktów, co wskazuje na regionalne różnice w relacji dochód-wiek.
  2. Status danych:
    • Dane kompletne (zielony) dominują w całym zbiorze.
    • Dane brakujące (pomarańczowy) występują sporadycznie, jednak są widoczne w określonych przedziałach wiekowych i dochodowych.
  3. Charakterystyka poszczególnych regionów:
    • Europa:
      • Rozkład jest bardziej rozproszony.
      • Dochody są generalnie niższe niż w pozostałych regionach.
      • Brakujące dane występują głównie w niższych przedziałach dochodowych.
    • Ameryka Północna:
      • Dane skoncentrowane w środkowych przedziałach wiekowych (20-60 lat) i dochodowych (50,000-100,000).
      • Liczba brakujących danych jest minimalna.
    • Pacyfik:
      • Dane są rozproszone, podobnie jak w Europie.
      • Braki danych występują w dolnych zakresach dochodów oraz wśród młodszych grup wiekowych.
  4. Rozkład wiekowy i dochodowy:
    • Największa liczba obserwacji znajduje się w grupach wiekowych 30-60 lat oraz dochodowych 50,000-100,000.
    • Brakujące dane są zauważalne w dolnych przedziałach dochodowych i w młodszych grupach wiekowych.

Wnioski

  • Braki danych są niewielkie i raczej nie powinny znacząco wpłynąć na analizę ogólną. Mogą jednak mieć znaczenie w określonych przedziałach (np. niski dochód w Europie i Pacyfiku).
  • Regionalne różnice w rozkładach sugerują konieczność odrębnej analizy dla każdego regionu, aby uwzględnić lokalne specyfiki.

1. Brakujące dane w podziale na poziom wykształcenia W pierwszej analizie dane zostały podzielone według poziomu wykształcenia, a następnie przeanalizowano rozkład brakujących wartości w różnych kategoriach. Wyniki wskazują, że:

Najwięcej brakujących wartości odnotowano w zmiennych Age (Wiek), Children (Dzieci) oraz Cars (Samochody). Szczególnie wysokie braki dotyczą grupy Partial High School oraz Graduate Degree, gdzie niektóre zmienne osiągają poziom braków przekraczający 2,5% obserwacji. Braki w zmiennych takich jak Income (Dochód) oraz Marital Status (Stan cywilny) są bardziej rozproszone, lecz zauważalne w kilku grupach wykształcenia.

2.Brakujące dane w podziale na regiony W drugiej analizie dane zostały podzielone według regionów (Europe, North America, Pacific). Obserwacje wskazują na następujące wnioski:

Najwięcej braków odnotowano w kategorii Income (Dochód) w regionie Pacific, gdzie poziom braków jest najwyższy (powyżej 2,5%). Znaczące luki występują także w kategoriach Gender (Płeć) oraz Cars (Samochody) w Europie, co sugeruje potencjalne błędy w zbieraniu danych w tym regionie.

Braki w pozostałych kategoriach, takich jak Marital Status (Stan cywilny) czy Commute Distance (Dystans dojazdu), są mniej istotne, jednak nadal widoczne w różnych regionach.

  1. Brakujące dane w podziale na płeć Ostatnia analiza dotyczyła rozkładu braków danych w zależności od płci. Wyniki wskazują, że:

Najwięcej brakujących danych dotyczy osób, dla których nie określono płci (NA). Szczególnie duże luki występują w kategoriach Age (Wiek), Children (Dzieci) oraz Cars (Samochody), gdzie brakujące wartości osiągają poziom powyżej 7,5%. W grupach Female i Male braki danych są znacznie mniejsze, ale widoczne są w zmiennych Marital Status oraz Income. Możliwe, że brak określenia płci wiąże się z problemami w rejestracji danych lub ich późniejszym przetwarzaniu, co wymaga dalszej weryfikacji.

  1. Wnioski i rekomendacje Na podstawie powyższej analizy można sformułować następujące wnioski:

Braki danych są szczególnie widoczne w zmiennych związanych z wiekem, dziećmi oraz dochodem, co może wpłynąć na jakość przyszłych analiz i prognoz. Warto zwrócić uwagę na grupę osób bez określonej płci (NA), gdyż w tej kategorii braki są znacznie większe niż w pozostałych grupach.

Region Pacific wyróżnia się pod względem brakujących wartości w dochodach, co może wskazywać na trudności w zbieraniu tych danych w tym obszarze. W dalszych krokach zaleca się weryfikację źródeł brakujących danych oraz ewentualne zastosowanie metod imputacji, aby poprawić kompletność zbioru danych.

## W naszym pliku nie ma już braków danych
##  [1] "ID"               "Marital.Status"   "Gender"           "Income"          
##  [5] "Children"         "Education"        "Occupation"       "Home.Owner"      
##  [9] "Cars"             "Commute.Distance" "Region"           "Age"             
## [13] "Purchased.Bike"
## 
## Data model:
## dat1 : Commute.Distance %in% c('0-1 Miles', '1-2 Miles', '10+ Miles', '2-5 Miles', '5-10 Miles')
## dat2 : Education %in% c('Bachelors', 'Graduate Degree', 'High School', 'Partial College', 'Partial High School')
## dat3 : Gender %in% c('Female', 'Male')
## dat4 : Home.Owner %in% c('No', 'Yes')
## dat5 : Marital.Status %in% c('Married', 'Single')
## dat6 : Occupation %in% c('Clerical', 'Management', 'Manual', 'Professional', 'Skilled Manual')
## dat7 : Purchased.Bike %in% c('No', 'Yes')
## dat8 : Region %in% c('Europe', 'North America', 'Pacific') 
## 
## Edit set:
## num1 : 0 < ID
## num2 : 0 < Income
## num3 : 0 <= Children
## num4 : 0 <= Cars
## num5 : 0 < Age
## num6 : Age <= 120
## NULL
Podsumowanie
Wszystkie reguły zostały spełnione. Brak błędów.

Wykresy

Opis wykresu

Wykres ilustruje zależność pomiędzy odległością od miejsca pracy (oś X, przedstawiona w milach) a liczbą osób, które zdecydowały się na zakup roweru (oś Y).

Kluczowe obserwacje

  1. Najczęstsze zakupy rowerów:
    • Najwięcej osób, które zakupiło rower, mieszkało w odległości 0-1 mili od miejsca pracy.
    • Liczba zakupów spada w grupie osób mieszkających 1-2 mile od pracy.
  2. Nietypowe wzorce w średnich odległościach:
    • W przedziale 2-5 mil liczba zakupów wzrasta w porównaniu do osób mieszkających bliżej pracy (1-2 mile).
    • W przedziale 5-10 mil liczba zakupów rowerów ponownie spada do wartości podobnych jak w grupie 1-2 mile.
  3. Najrzadsze zakupy rowerów:
    • Osoby mieszkające w odległości powyżej 10 mil od miejsca pracy najrzadziej decydują się na zakup roweru.

Wnioski

  • Największy potencjał sprzedaży rowerów istnieje wśród osób pokonujących krótkie odległości do pracy (0-1 mila).
  • Osoby mieszkające 2-5 mil od pracy stanowią interesującą grupę, w której liczba zakupów jest wyższa niż w innych grupach średnich odległości.

Opis wykresu

Wykres przedstawia liczbę zakupów rowerów w podziale na typ zawodu (oś X) oraz płeć klientów. Na osi poziomej (X) uwzględniono kategorie zawodów: Clerical, Management, Manual, Professional, Skilled Manual. Oś pionowa (Y) reprezentuje liczbę osób, które zakupiły rower.
- Różowe słupki: reprezentują kobiety.
- Niebieskie słupki: reprezentują mężczyzn.

Kluczowe obserwacje

  1. Największa liczba zakupów:
    • Najwięcej rowerów zakupiono w grupie zawodów Professional, zarówno wśród kobiet, jak i mężczyzn.
    • W tej grupie mężczyźni wyraźnie dominują liczbowo.
  2. Grupa zawodów z wysokimi kwalifikacjami manualnymi (Skilled Manual):
    • Jest drugą pod względem liczby zakupów.
    • Liczba zakupów rowerów jest tutaj stosunkowo równomiernie rozłożona między kobiety a mężczyzn.
  3. Mniejsze liczby zakupów:
    • W zawodach Clerical (biurowych) odnotowano przewagę kobiet nad mężczyzn.
    • Grupa Manual charakteryzuje się niższymi wartościami zakupów niż grupy “Professional” i “Skilled Manual”.
  4. Najmniej zakupów w grupie “Management”:
    • W tej kategorii liczba zakupów jest najniższa dla obu płci.
    • Może to wynikać z preferencji osób na wyższych stanowiskach do korzystania z samochodów jako środka transportu.

Wnioski

  • Zawody z kategorii Professional oraz Skilled Manual stanowią kluczowe grupy klientów pod względem zakupu rowerów.
  • Niska liczba zakupów w grupie Management może wskazywać na ograniczone zainteresowanie rowerami wśród osób o wyższych dochodach, które preferują inne środki transportu.

#Utworzenie histogramu - zależność między wiekiem, a zakupem roweru
library(ggplot2)
library(dplyr)

wykres_4 <- ggplot(zbior, aes(age)) +
  geom_histogram(binwidth = 5, fill = "red", color = "black") +
  labs(title = "Zakup raweru w zależności do wieku", x = "Wiek", y = "Zakup roweru") +
  theme_minimal()

wykres_4

##Utworzenie wykresu słupkowego - zależność między regionem, a zakupem roweru
library(ggplot2)
library(dplyr)

wykres_5 <- ggplot(zbior, aes(region)) +
  geom_bar(fill = "pink", color = "lightgreen") +
  labs(title = "Zakup raweru w zależności do regionu zamieszkania", x = "Region", y = "Zakup roweru") +
  theme_minimal()

wykres_5

#Utworzenie boxplota - zakup roweru względem zarobków
library(ggplot2)
library(dplyr)

wykres_6 <- ggplot(zbior, aes(x = purchased_bike, y = income)) +
    geom_boxplot(fill = "lightblue", color = "darkblue") +
  labs(title = "Zakup roweru z zleżności od zarobków", 
       x = "Zakup roweru", 
       y = "Zarobki") +
  theme_minimal()

wykres_6

#Utworzenie boxplota - zakup roweru względem zarobków z odstającymi wartościami

wykres_7 <- ggplot(zbior, aes(x = purchased_bike, y = income)) +
    geom_boxplot(outlier.color = "red", outlier.shape = 8) +
  labs(title = "Zakup roweru z zleżności od zarobków z odstającymi wartościami", 
       x = "Zakup roweru", 
       y = "Zarobki") +
  theme_minimal()

wykres_7